<template>
	<view class="themeItem">
		<navigator v-if="!isMore" class="box" :url="`/pages/classlist/classlist?classid=${item._id}&name=${item.name}`">
			<image class="pic" :src="item.picurl" mode=""></image>
			<view class="mask">{{item.name}}</view>
			<view class="tab" v-if="compareTimestamp(item.updateTime)">{{compareTimestamp(item.updateTime)}}前更新</view>
		</navigator>
		<navigator url="/pages/classify/classify" open-type="reLaunch" v-if="isMore" class="box more">
			<image class="pic" :src="item.picurl" mode=""></image>
			<view class="mask">
				<uni-icons type="more-filled" color="#fff" size="28"></uni-icons>
				<text class="text">更多</text>
			</view>
		</navigator>
	</view>
</template>

<script setup>
	import {
		compareTimestamp
	} from '../../utils/common';

	defineProps({
		isMore: {
			type: Boolean,
			default: false
		},
		item: {
			type: Object,
			default () {
				return {
					name: '默认名称',
					picurl: '../../common/images/classify1.jpg',
					updateTime: Date.now() - 5 * 60 * 60 * 1000
				}
			}
		}
	})
</script>

<style lang="scss" scoped>
	.themeItem {
		.box {
			height: 340rpx;
			border-radius: 10rpx;
			overflow: hidden;
			position: relative;

			.pic {
				width: 100%;
				height: 100%;
			}

			.mask {
				width: 100%;
				height: 70rpx;
				position: absolute;
				bottom: 0;
				left: 0;
				background: rgba(0, 0, 0, 0.2);
				color: #fff;
				display: flex;
				align-items: center;
				justify-content: center;
				backdrop-filter: blur(20rpx);
				font-weight: 600;
			}

			.tab {
				position: absolute;
				left: 0;
				top: 0;
				background: rgba(250, 129, 90, 0.7);
				backdrop-filter: blur(20rpx);
				color: #fff;
				font-size: 22rpx;
				padding: 6rpx 14rpx;
				border-radius: 0 0 20rpx 0;
			}
		}

		.box.more {
			.mask {
				width: 100%;
				height: 100%;
				flex-direction: column;
			}

			.text {
				font-size: 28rpx;
			}
		}
	}
</style>